package demo1;

import java.util.ArrayList;

public class Test {
    public static void main1(String[] args) {
        //不用泛型：
        //1、接收不同任意类型的数据
        //2、类型不一致时，需要强制类型转换
        System.out.println("非泛型：");
        ArrayList arrayList = new ArrayList();
        arrayList.add("小黑子");
        arrayList.add(123);
        arrayList.add(true);
        for (int i = 0; i < arrayList.size(); i++) {
            Object o = arrayList.get(i);
            System.out.println(o);
        }
    }



    public static void main(String[] args) {
        //泛型的好处：
        //1、类型安全，编译时自动检查类型是否匹配
        //2、消除了强制类型转换
        System.out.println("泛型ArrayList<String>：");
        ArrayList<String> list = new ArrayList<>();
        list.add("小黑子");
        list.add("苏珊");
        list.add("树脂");

        for (int i = 0; i < list.size(); i++) {
            String s = list.get(i);
            System.out.println(s);
        }

        System.out.println("----------------------");
        System.out.println("泛型ArrayList<Integer>：");
        ArrayList<Integer> list1 = new ArrayList<>();
        list1.add(666);

        //Integer/int均可   Integer=》int 自动拆箱
        Integer integer = list1.get(0);
        System.out.println(integer);
    }
}